package com.twinkle.abmsspringboot.service;

import com.twinkle.abmsspringboot.entity.UserInfo;

/**
 * ABMS - SpringBoot
 * <p>service 用户服务</p>
 * <p>service -> interface :UserInfoService -> implement :UserInfoServiceImpl</p>
 * <p>
 * 更新了形参变量名
 *
 * @author Twinkle
 * @version 1.0.1
 * @since 15 Nov. 2020
 * @since 2 Aug. 2021
 * @since 4 Aug. 2021
 */
public interface UserInfoService {

    /**
     * 登录
     * <p>
     * 查询结果不为空时，登录成功
     *
     * @param paraUsername 待登陆账号
     * @param paraPassword 待登录账号的密码
     * @return 查询结果
     */
    UserInfo signIn(String paraUsername, String paraPassword);

    /**
     * 注册
     * <p>
     * 执行结果值为 true，执行成功；反之，执行失败
     *
     * @param paraUsername 待注册账号
     * @param paraPassword 待注册账号的密码
     * @return 执行结果
     */
    boolean signUp(String paraUsername, String paraPassword);

    /**
     * 更新用户信息
     * <p>
     * 执行结果值为 true，执行成功；反之，执行失败
     *
     * @param paraUserInfo 待更新的用户信息
     * @return 执行结果
     */
    boolean updateUserInfo(UserInfo paraUserInfo);
}
